#include "PassengerCar.h"


PassengerCar::PassengerCar(Engine *engine) : Car(engine) 
{
}


PassengerCar::~PassengerCar(void)
{
}

void PassengerCar::Go()
{
	cout << "Passenger car going" << endl;
}

void PassengerCar::Stop()
{
	cout << "Passenger car stoping" << endl;
}

PassengerCar* PassengerCar::CreateInstance(DependencyContainer* dependencyContainer)
{
	IDependencyBinding* passengerEngine = dependencyContainer->For<PassengerCar>()->Get<Engine>()->Out();
	Engine* engine = EngineFactory::CreateInstance(passengerEngine->GetDependecy());
	return new PassengerCar(engine);
}